home *** CD-ROM | disk | FTP | other *** search
/ IRIX Base Documentation 1998 November / IRIX 6.5.2 Base Documentation November 1998.img / usr / share / catman / p_man / cat3 / sigqueue.z / sigqueue
Text File  |  1998-10-20  |  5KB  |  133 lines

  1.  
  2.  
  3.  
  4. SSSSIIIIGGGGQQQQUUUUEEEEUUUUEEEE((((3333))))                                                        SSSSIIIIGGGGQQQQUUUUEEEEUUUUEEEE((((3333))))
  5.  
  6.  
  7.  
  8. NNNNAAAAMMMMEEEE
  9.      sigqueue - queue a signal to a process  (POSIX)
  10.  
  11. CCCC SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
  12.      ####iiiinnnncccclllluuuuddddeeee <<<<ssssiiiiggggnnnnaaaallll....hhhh>>>>
  13.  
  14.      iiiinnnntttt ssssiiiiggggqqqquuuueeeeuuuueeee((((ppppiiiidddd____tttt ppppiiiidddd,,,, iiiinnnntttt ssssiiiiggggnnnnoooo,,,, ccccoooonnnnsssstttt uuuunnnniiiioooonnnn ssssiiiiggggvvvvaaaallll vvvvaaaalllluuuueeee))));;;;
  15.  
  16. DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
  17.      The function _s_i_g_q_u_e_u_e() causes the signal specified by _s_i_g_n_o to be sent
  18.      with the value specified by _v_a_l_u_e to the process specified by _p_i_d. If
  19.      _s_i_g_n_o is zero (the null signal), error checking is performed, but no
  20.      signal is actually sent. The null signal can be used to check the
  21.      validity of _p_i_d.
  22.  
  23.      The conditions required for a process to have permission to queue a
  24.      signal to another process are the same as for the _k_i_l_l(2) function.
  25.  
  26.      If the signal specified in _s_i_g_n_o is currently blocked for the receiving
  27.      process, _s_i_g_q_u_e_u_e() shall return immediately and, if SA_SIGINFO is set
  28.      for _s_i_g_n_o and if the resources were available to queue the signal, the
  29.      signal shall be left queued and pending. Furthermore, when the signal
  30.      handler for _s_i_g_n_o is delivered, the field _s_i__c_o_d_e of the passed in
  31.      _s_i_g_i_n_f_o structure will be set to SI_QUEUE (see _ssss_iiii_gggg_aaaa_cccc_tttt_iiii_oooo_nnnn(2), _ssss_iiii_gggg_nnnn_aaaa_llll(5)).
  32.      If SA_SIGINFO is not set for _s_i_g_n_o, then _s_i_g_n_o, but not necessarily
  33.      _v_a_l_u_e, shall be sent at least once to the receiving process.
  34.  
  35.      If the value of _p_i_d causes _s_i_g_n_o to be generated for the sending process,
  36.      and if _s_i_g_n_o is not blocked for the calling thread and if no other thread
  37.      has _s_i_g_n_o unblocked or is waiting in a _s_i_g_w_a_i_t function for _s_i_g_n_o, at
  38.      least one pending unblocked signal shall be delivered to the calling
  39.      thread before the _s_i_g_q_u_e_u_e() function returns.
  40.  
  41. SSSSEEEEEEEE AAAALLLLSSSSOOOO
  42.      _kkkk_iiii_llll_llll(2), _ssss_iiii_gggg_aaaa_cccc_tttt_iiii_oooo_nnnn(2), _ssss_iiii_gggg_wwww_aaaa_iiii_tttt(3), _ssss_iiii_gggg_nnnn_aaaa_llll(5).
  43.  
  44. DDDDIIIIAAAAGGGGNNNNOOOOSSSSTTTTIIIICCCCSSSS
  45.      Upon successful completion, the _s_i_g_q_u_e_u_e() function returns a value of 0
  46.      indicating that the specified signal has been queued. Otherwise a value
  47.      of -1 is returned and _e_r_r_n_o is set to indicate the error.  If any of the
  48.      conditions below occur, the _s_i_g_q_u_e_u_e() function shall return -1 and set
  49.      _e_r_r_n_o to the corresponding value:
  50.  
  51.      [EAGAIN]       No resources available to queue the signal.  The process
  52.                     has already queued SIGQUEUE_MAX signals that are still
  53.                     pending at the receivers, or a system wide resource limit
  54.                     has been exceeded.
  55.  
  56.      [EINVAL]       The value of the _s_i_g argument is an invalid or unsupported
  57.                     signal number.
  58.  
  59.  
  60.  
  61.  
  62.  
  63.                                                                         PPPPaaaaggggeeee 1111
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. SSSSIIIIGGGGQQQQUUUUEEEEUUUUEEEE((((3333))))                                                        SSSSIIIIGGGGQQQQUUUUEEEEUUUUEEEE((((3333))))
  71.  
  72.  
  73.  
  74.      [EPERM]        The process does not have the appropriate privilege to
  75.                     send the signal to the receiving process.
  76.  
  77.      [EPERM]        The process _p_i_d does not exist.
  78.  
  79. WWWWAAAARRRRNNNNIIIINNNNGGGG
  80.      The POSIX and System V signal facilities have different semantics.  Using
  81.      both facilities in the same program is ssssttttrrrroooonnnnggggllllyyyy ddddiiiissssccccoooouuuurrrraaaaggggeeeedddd and will
  82.      result in unpredictable behavior.
  83.  
  84.  
  85.  
  86.  
  87.  
  88.  
  89.  
  90.  
  91.  
  92.  
  93.  
  94.  
  95.  
  96.  
  97.  
  98.  
  99.  
  100.  
  101.  
  102.  
  103.  
  104.  
  105.  
  106.  
  107.  
  108.  
  109.  
  110.  
  111.  
  112.  
  113.  
  114.  
  115.  
  116.  
  117.  
  118.  
  119.  
  120.  
  121.  
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.                                                                         PPPPaaaaggggeeee 2222
  130.  
  131.  
  132.  
  133.